package com.insideClass.Queue;

import javafx.scene.layout.Priority;

import java.util.*;

/**
 * @author 13699
 */
public class PriorityQueueDemo {
    public static void main(String[] args) {
        PriorityQueue<Integer> priorityQueue=new PriorityQueue<>();
        Random rand=new Random(47);
        for(int i=0;i<10;i++){
            priorityQueue.offer(rand.nextInt());
        }
        QueueDemo.printQ(priorityQueue);
        List<Integer> ints= Arrays.asList(25,22,20,18,14,9,3,1,
                1,2,3,9,14,18,21,23,25);
        priorityQueue=new PriorityQueue<>(ints);
        QueueDemo.printQ(priorityQueue);
        priorityQueue=new PriorityQueue<>(ints.size(),
                Collections.reverseOrder());
        priorityQueue.addAll(ints);
        QueueDemo.printQ(priorityQueue);
        String fact="EDUCATION SHOULD ESCHEW OBFUSCATION";
        List<String> strings=Arrays.asList(fact.split(""));
        PriorityQueue<String> strinpq=new PriorityQueue<>(strings);
        QueueDemo.printQ(strinpq);
        strinpq.addAll(strings);
        QueueDemo.printQ(strinpq);

        Set<Character> charSet=new HashSet<>();
        for (char c:
             fact.toCharArray()) {
            charSet.add(c);
        }
        PriorityQueue<Character> characterPQ=new PriorityQueue<>(charSet);
        QueueDemo.printQ(characterPQ);
    }
}
